This attribute is an alternative to the standard Ignore
attribute in NUnit. It allows for ignoring tests only under a specified condition. The condition evaluates during OnLoad
, referenced by ID.
The following example shows a method to use the ConditionalIgnore
attribute to ignore a test if the Unity Editor is running macOS:
using UnityEditor; using NUnit.Framework; using UnityEngine.TestTools; [InitializeOnLoad] public class OnLoad { static OnLoad() { var editorIsOSX = false; #if UNITY_EDITOR_OSX editorIsOSX = true; #endif ConditionalIgnoreAttribute.AddConditionalIgnoreMapping("IgnoreInMacEditor", editorIsOSX); } } public class MyTestClass { [Test, ConditionalIgnore("IgnoreInMacEditor", "Ignored on Mac editor.")] public void TestNeverRunningInMacEditor() { Assert.Pass(); } }
Note: You can only use
InitializeOnLoad
in Edit Mode tests.